home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 3 / Amiga Format CD03 (1996-07-04)(Future Publishing)(GB)(Track 1 of 6)[!][issue 1996-08].iso / comms / netsoftware / nethandler.lha / NetHandler / handler / process.c < prev    next >
C/C++ Source or Header  |  1989-09-16  |  2KB  |  71 lines

  1. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  2. /* |_o_o|\\ Copyright (c) 1987, 1988 The Software Distillery.  All Rights  */
  3. /* |. o.| || Reserved.  This program may not be distributed without the    */
  4. /* | .  | || permission of the authors:                            BBS:    */
  5. /* | o  | ||   John Toebes     Doug Walker    Dave Baker                   */
  6. /* |  . |//                                                                */
  7. /* ======                                                                  */
  8. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  9. /* Process Control */
  10.  
  11. /* ActDie ActInhibit ActFlush ActTimer */
  12. #include "handler.h"
  13.  
  14. void ActDie(global, pkt)
  15. GLOBAL global;
  16. struct DosPacket *pkt;              /* a pointer to the dos packet sent       */
  17. {
  18.    struct NetNode *netnode;
  19.    BUG(("ActDie\n"));
  20.    global->n.run = 0;
  21.    global->RP.Type = pkt->dp_Type;
  22.  
  23.    for(netnode=global->netchain.next; netnode; netnode=netnode->next)
  24.    {
  25.       if(netnode->status == NODE_UP && netnode->RootLock.RDevice)
  26.       {
  27.          BUGBSTR("Shutting down node ", netnode->name);
  28.          RemotePacket(global, &netnode->RootLock);
  29.          netnode->status = NODE_DEAD;
  30.       }
  31.    }
  32. }
  33.  
  34. void ActInhibit(global, pkt)
  35. GLOBAL global;
  36. struct DosPacket *pkt;              /* a pointer to the dos packet sent       */
  37. {
  38.    BUG(("ActInhibit: %ld\n", pkt->dp_Arg1));
  39.    pkt->dp_Res1 = DOS_TRUE;
  40.    if(pkt->dp_Arg1 == 0)
  41.    {
  42.       /* Since the DISKCHANGE command uses ACTION_INHIBIT instead of */
  43.       /* ACTION_DISK_CHANGE, do a ACTION_DISK_CHANGE just in case    */
  44.       ActDiskChange(global, pkt);
  45.    }
  46. }
  47.  
  48. void ActFlush(global, pkt)
  49. GLOBAL global;
  50. struct DosPacket *pkt;
  51. {
  52.    BUG(("ActFlush\n"));
  53. }
  54.  
  55. #if 0
  56. void ActTimer(global, pkt)
  57. GLOBAL global;
  58. struct DosPacket *pkt;        /* a pointer to the dos packet sent */
  59. {
  60.    BUG(("ActTimer\n"));
  61.  
  62.    if (global->run == -1)
  63.       global->run = 0;
  64.    else
  65.       PostTimerReq(global);
  66.  
  67.    /* Prevent them from replying to the message */
  68.    global->reply = 0;
  69. }
  70. #endif
  71.